// next接收参数
// function* generator() {
// 	for (let i = 1; i < 3; i++) {
// 		let yieldVal = yield i;
// 		console.log('yieldVal=', yieldVal);
// 		if (yieldVal == 2) {
// 			i = 0
// 		}
// 	}
// }
// let gen = generator()
// console.log('nextObj=', gen.next());
// console.log('nextObj=', gen.next());
// console.log('nextObj=', gen.next(2));
// console.log('nextObj=', gen.next());
// console.log('nextObj=', gen.next());


// 让第一次调用next就让其传入的参数生效
function outerFun(generatorFun) {
	return function() {
		let gen = generatorFun()
		gen.next()
		return gen
	}
}

const outer = outerFun(function*() {
	console.log(`你第一次传入的参数是: ${yield}`)
	return 'World'
});
console.log(outer);

outer().next('Hello~')
